<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="Turn checkboxes and radio buttons in toggle switches.">
    <meta name="author" content="Mattia Larentis, Emanuele Marchi and Peter Stein">
    <title>Bootstrap Switch · Turn checkboxes and radio buttons in toggle switches</title>
    <link href="http://fonts.googleapis.com/css?family=Roboto:400,700" rel="stylesheet">
    <link href="docs/css/bootstrap.min.css" rel="stylesheet">
    <link href="docs/css/highlight.css" rel="stylesheet">
    <link href="dist/css/bootstrap3/bootstrap-switch.css" rel="stylesheet">
    <link href="docs/css/main.css" rel="stylesheet">
    <script>
      var _gaq = _gaq || [];
      _gaq.push(['_setAccount', 'UA-43092768-1']);
      _gaq.push(['_trackPageview']);
      (function () {
        var ga = document.createElement('script');
        ga.type = 'text/javascript';
        ga.async = true;
        ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
        var s = document.getElementsByTagName('script')[0];
        s.parentNode.insertBefore(ga, s);
      })();
    </script>
  </head>
  <body><a href="https://github.com/nostalgiaz/bootstrap-switch" id="github"><img src="https://s3.amazonaws.com/github/ribbons/forkme_right_gray_6d6d6d.png" alt="Fork me on GitHub"></a>
    <header role="banner" class="navbar navbar-default navbar-fixed-top top">
      <div class="container">
        <div class="navbar-header">
          <button type="button" data-toggle="collapse" data-target="#collapse" class="navbar-toggle"><span class="sr-only">Toggle navigation</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span></button><a href="../" class="navbar-brand">Bootstrap Switch <strong>3</strong></a>
        </div>
        <nav id="collapse" role="navigation" class="collapse navbar-collapse">
          <ul class="nav navbar-nav">
            <li class="dropdown"><a href="#" data-toggle="dropdown">Download<span class="caret"></span></a>
              <ul class="dropdown-menu">
                <li><a href="https://github.com/nostalgiaz/bootstrap-switch/archive/master.zip">3 (Stable)</a></li>
                <li><a href="https://github.com/nostalgiaz/bootstrap-switch/archive/v2.0.1.zip">2.0.1 (Legacy)</a></li>
              </ul>
            </li>
            <li><a href="#new">What's new</a></li>
            <li><a href="#start">Start</a></li>
            <li class="dropdown"><a href="#" data-toggle="dropdown">Documentation<span class="caret"></span></a>
              <ul class="dropdown-menu">
                <li><a href="/documentation-3.html">Version 3 (Stable)</a></li>
                <li><a href="/documentation-2.html">Version 2.0.1 (Legacy)</a></li>
              </ul>
            </li>
            <li><a href="https://github.com/nostalgiaz/bootstrap-switch/issues">Bug reports</a></li>
          </ul>
        </nav>
      </div>
    </header>
    <div class="container content">
      <h1 class="page-header">Documentation 3 (Stable)</h1>
      <div id="options-3">
        <h2 class="page-header">Options</h2>
        <table class="table table-bordered table-striped table-responsive">
          <thead>
            <tr>
              <th>Name</th>
              <th>Attribute</th>
              <th>Type</th>
              <th>Description</th>
              <th>Values</th>
              <th>Default</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>state</td>
              <td>checked</td>
              <td>Boolean</td>
              <td>The checkbox state</td>
              <td>true, false</td>
              <td>true</td>
            </tr>
            <tr>
              <td>size</td>
              <td>data-size</td>
              <td>String</td>
              <td>The checkbox state</td>
              <td>null, 'mini', 'small', 'normal', 'large'</td>
              <td>null</td>
            </tr>
            <tr>
              <td>animate</td>
              <td>data-animate</td>
              <td>Boolean</td>
              <td>Animate the switch</td>
              <td>true, false</td>
              <td>true</td>
            </tr>
            <tr>
              <td>disabled</td>
              <td>disabled</td>
              <td>Boolean</td>
              <td>Disable state</td>
              <td>true, false</td>
              <td>false</td>
            </tr>
            <tr>
              <td>readonly</td>
              <td>readonly</td>
              <td>Boolean</td>
              <td>Readonly state</td>
              <td>true, false</td>
              <td>false</td>
            </tr>
            <tr>
              <td>indeterminate</td>
              <td></td>
              <td>Boolean</td>
              <td>indeterminate state</td>
              <td>true, false</td>
              <td>false</td>
            </tr>
            <tr>
              <td>onColor</td>
              <td>data-on-color</td>
              <td>String</td>
              <td>Color of the left side of the switch</td>
              <td>'primary', 'info', 'success', 'warning', 'danger', 'default'</td>
              <td>'primary'</td>
            </tr>
            <tr>
              <td>offColor</td>
              <td>data-off-color</td>
              <td>String</td>
              <td>Color of the right side of the switch</td>
              <td>'primary', 'info', 'success', 'warning', 'danger', 'default'</td>
              <td>'default'</td>
            </tr>
            <tr>
              <td>onText</td>
              <td>data-on-text</td>
              <td>String</td>
              <td>Text of the left side of the switch</td>
              <td>String</td>
              <td>'ON'</td>
            </tr>
            <tr>
              <td>offText</td>
              <td>data-off-text</td>
              <td>String</td>
              <td>Text of the right side of the switch</td>
              <td>String</td>
              <td>'OFF'</td>
            </tr>
            <tr>
              <td>labelText</td>
              <td>data-label-text</td>
              <td>String</td>
              <td>Text of the center handle of the switch</td>
              <td>String</td>
              <td>'&amp;nbsp;'</td>
            </tr>
            <tr>
              <td>baseClass</td>
              <td>data-base-class</td>
              <td>String</td>
              <td>Global class prefix</td>
              <td>String</td>
              <td>'bootstrap-switch'</td>
            </tr>
            <tr>
              <td>wrapperClass</td>
              <td>data-wrapper-class</td>
              <td>String | Array</td>
              <td>Container element class(es)</td>
              <td>String | Array</td>
              <td>'wrapper'</td>
            </tr>
            <tr>
              <td>onInit</td>
              <td></td>
              <td>Function</td>
              <td>Callback function to execute on initialization</td>
              <td>Function</td>
              <td>
                <pre><code class="javascript">function(event, state) {}</code></pre>
              </td>
            </tr>
            <tr>
              <td>onSwitchChange</td>
              <td></td>
              <td>Function</td>
              <td>Callback function to execute on switch state change</td>
              <td>Function</td>
              <td>
                <pre><code class="javascript">function(event, state) {}</code></pre>
              </td>
            </tr>
            <tr>
              <td>radioAllOff</td>
              <td>data-radio-all-off</td>
              <td>Boolean</td>
              <td>Allow this radio button to be unchecked by the user</td>
              <td>true, false</td>
              <td>false</td>
            </tr>
          </tbody>
        </table>
        <h3>Global Defaults Overriding</h3>
        <p>Follow the jQuery convention to override the default options of the library. For instance:</p>
        <pre><code>$.fn.bootstrapSwitch.defaults.size = 'large';
$.fn.bootstrapSwitch.defaults.onColor = 'success';</code></pre>
      </div>
      <div id="methods-3">
        <h2 class="page-header">Methods</h2>
        <p>In Bootstrap Switch, every option is also a method.</p>
        <p>If the second parameter is omitted, the method return the current value.</p>
        <p>You can invoke methods as follows:</p>
        <pre><code>$('input[name="my-checkbox"]').bootstrapSwitch('state', true, true);</code></pre>
        <h3>Additional Methods</h3>
        <table class="table table-bordered table-striped table-responsive">
          <thead>
            <tr>
              <th>Name</th>
              <th>Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>toggleState</td>
              <td>Toggle the switch state</td>
            </tr>
            <tr>
              <td>toggleDisabled</td>
              <td>Toggle the disabled state</td>
            </tr>
            <tr>
              <td>toggleReadonly</td>
              <td>Toggle the readonly state</td>
            </tr>
            <tr>
              <td>destroy</td>
              <td>Destroy the instance of Bootstrap Switch</td>
            </tr>
          </tbody>
        </table>
        <h3>Special Behaviours</h3>
        <ul>
          <li>The method <code>state</code> can receive an optional third parameter <code>skip</code>. if true, <code>switchChange</code> event is not executed. The default is false.</li>
          <li>The method <code>toggleState</code> can receive an optional second parameter <code>skip</code>. if true, <code>switchChange</code> event is not executed. The default is false.</li>
          <li>The method <code>wrapperClass</code> can accepts a falsy value as second parameter. If so, it resets the class to its default.</li>
        </ul>
      </div>
      <div id="events-3">
        <h2 class="page-header">Events</h2>
        <p>
          All the events are namespaced, therefore always append <code>.bootstrapSwitch</code> when you
          attach your handlers.<br>
          You can register to the emitted events as follow:
        </p>
        <pre><code>$('input[name="my-checkbox"]').on('switchChange.bootstrapSwitch', function(event, state) {
  console.log(this); // DOM element
  console.log(event); // jQuery event
  console.log(state); // true | false
});</code></pre>
        <table class="table table-bordered table-striped table-responsive">
          <thead>
            <tr>
              <th>Name</th>
              <th>Description</th>
              <th>Parameters</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>init</td>
              <td>Triggered on initialization. 'this' refers to the DOM element.</td>
              <td>event (<a href="https://api.jquery.com/category/events/event-object/" target="_blank">jQuery Event object</a>)</td>
            </tr>
            <tr>
              <td>switchChange</td>
              <td>Triggered on switch state change. 'this' refers to the DOM element.</td>
              <td>
                event (<a href="https://api.jquery.com/category/events/event-object/" target="_blank">jQuery Event object</a>),
                state (true | false)
              </td>
            </tr>
          </tbody>
        </table>
      </div>
      <div id="examples-3">
        <h2 class="page-header">Examples</h2>
        <p>To be included</p>
        <!--
        h3 State
        .row
          .col-sm-6
            input(type='checkbox', id='state-switch' checked)
          .col-sm-6
            .btn-group.pull-right
              button(type='button', id='state-switch-state', class='btn btn-default') Get State
              &nbsp;
              button(type='button', id='state-switch-on', class='btn btn-default') Set On
              &nbsp;
              button(type='button', id='state-switch-off', class='btn btn-default') Set Off
              &nbsp;
              button(type='button', id='state-switch-toggle', class='btn btn-default') Toggle State
        -->
      </div>
    </div>
    <div class="container bottom">
      <p>
        Licensed under the
        <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache License, Version 2.0</a>
        · Created by
        <a href="https://github.com/nostalgiaz" target="_blank">Mattia Larentis</a>
        · Mantained by
        <a href="https://github.com/lostcrew" target="_blank">Emanuele Marchi</a>
      </p>
    </div>
    <script src="docs/js/jquery.min.js"></script>
    <script src="docs/js/bootstrap.min.js"></script>
    <script src="docs/js/highlight.js"></script>
    <script src="dist/js/bootstrap-switch.js"></script>
    <script src="docs/js/main.js"></script>
  </body>
</html>